package pe.gob.sunarp.entidad;

import java.io.Serializable;
import javax.persistence.*;
import java.util.Date;


/**
 * The persistent class for the TITULO_DOCUMENTO database table.
 * 
 */
@Entity
@Table(name="TITULO_DOCUMENTO")
public class TituloDocumento implements Serializable {
	private static final long serialVersionUID = 1L;
	private TituloDocumentoPK id;
	private String agntSync;
	private String funcionario;
	private Date tsDocuLega;
	private Date tsUltSync;
	private TmTipoDocuLegale tmTipoDocuLegale;
	private TmTipoFuncionario tmTipoFuncionario;
	private Titulo titulo;

    public TituloDocumento() {
    }


	@EmbeddedId
	public TituloDocumentoPK getId() {
		return this.id;
	}

	public void setId(TituloDocumentoPK id) {
		this.id = id;
	}
	

	@Column(name="AGNT_SYNC", length=4)
	public String getAgntSync() {
		return this.agntSync;
	}

	public void setAgntSync(String agntSync) {
		this.agntSync = agntSync;
	}


	@Column(length=80)
	public String getFuncionario() {
		return this.funcionario;
	}

	public void setFuncionario(String funcionario) {
		this.funcionario = funcionario;
	}


    @Temporal( TemporalType.DATE)
	@Column(name="TS_DOCU_LEGA")
	public Date getTsDocuLega() {
		return this.tsDocuLega;
	}

	public void setTsDocuLega(Date tsDocuLega) {
		this.tsDocuLega = tsDocuLega;
	}


    @Temporal( TemporalType.DATE)
	@Column(name="TS_ULT_SYNC")
	public Date getTsUltSync() {
		return this.tsUltSync;
	}

	public void setTsUltSync(Date tsUltSync) {
		this.tsUltSync = tsUltSync;
	}


	//bi-directional many-to-one association to TmTipoDocuLegale
    @ManyToOne
	@JoinColumn(name="COD_TIPO_DOCU_LEGA")
	public TmTipoDocuLegale getTmTipoDocuLegale() {
		return this.tmTipoDocuLegale;
	}

	public void setTmTipoDocuLegale(TmTipoDocuLegale tmTipoDocuLegale) {
		this.tmTipoDocuLegale = tmTipoDocuLegale;
	}
	

	//bi-directional many-to-one association to TmTipoFuncionario
    @ManyToOne
	@JoinColumn(name="COD_TIPO_FUNC")
	public TmTipoFuncionario getTmTipoFuncionario() {
		return this.tmTipoFuncionario;
	}

	public void setTmTipoFuncionario(TmTipoFuncionario tmTipoFuncionario) {
		this.tmTipoFuncionario = tmTipoFuncionario;
	}
	

	//bi-directional many-to-one association to Titulo
    @ManyToOne
	@JoinColumn(name="REFNUM_TITU", nullable=false, insertable=false, updatable=false)
	public Titulo getTitulo() {
		return this.titulo;
	}

	public void setTitulo(Titulo titulo) {
		this.titulo = titulo;
	}
	
}